package com.linzm.leetcode.primary.exercises3_20230122;

/**
 * @Author zimingl
 * @Date 2023/1/25 17:39
 * @Description: 字母在字符串中的百分比
 */
public class Demo23_2278 {
    /**
     * 给你一个字符串 s 和一个字符 letter ，
     * 返回在 s 中等于 letter 字符所占的 百分比 ，向下取整到最接近的百分比。
     * 输入：s = "foobar", letter = "o"
     * 输出：33
     * 解释：
     * 等于字母 'o' 的字符在 s 中占到的百分比是 2 / 6 * 100% = 33% ，向下取整，所以返回 33 。
     */
    public static void main(String[] args) {
        String s = "foobar", letter = "o";
        Demo23_2278 demo23_2278 = new Demo23_2278();
        int i = demo23_2278.percentageLetter2(s, letter.charAt(0));
        System.out.println(i);
    }

    private int percentageLetter(String s, char letter) {
        int len = s.length(), count = 0;
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == letter) {
                count++;
            }
        }
        double num =  ((double) count / (double) len) * 100;
        return (int) num;
    }

    private int percentageLetter2(String s, char letter) {
        int len = s.length(), count = 0;
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == letter) {
                count++;
            }
        }
        return 100 * count / len;
    }
}
